/*
 * Caja.h
 *
 *  Created on: 19/10/2012
 *      Author: Ignacio Galvez
 */

#ifndef CAJA_H_
#define CAJA_H_

#include "Daniable.h"

/*Las cajas son elementos estaticos del juego
 * que pueden ser dañados y de ser destruidos
 * por un huevo estos otorgan puntos a jugador*/
class Caja:public  Daniable {
public:
	virtual int bonificar() = 0;
	void serDaniadoPorPajaroRojo();
	void serDaniadoPorPajaroVerde();
	void serDaniadoPorPajaroAzul();
	void serDaniadoPorHuevoBlanco();
	void serDaniadoPorHuevoCodorniz();
	void serDaniadoPorHuevoPoche();
	void serDaniadoPorHuevoReloj();
	virtual void recibirExplosionHuevoBlanco();
	~Caja();
protected:
	Caja(double puntosDeVida, double x, double y);
private:
	static double DANIO_HUEVO_BLANCO;
	static double DANIO_HUEVO_CODORNIZ;
	static double DANIO_HUEVO_POCHE;
	static double DANIO_HUEVO_RELOJ;
	static double EXPLOSION_HUEVO_BLANCO;
	static double DANIO_PAJARO_ROJO;
	static double DANIO_PAJARO_VERDE;
	static double DANIO_PAJARO_AZUL;
};
#endif /* CAJA_H_ */
